package com.second.client.controller;

import com.second.client.pojo.vo.CouponRecordQueryVo;
import com.second.client.pojo.vo.IntegrationQueryVo;
import com.second.client.pojo.vo.PageVo;
import com.second.client.service.ClientCouponRecordService;
import com.second.common.pojo.R;
import io.swagger.annotations.*;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;

/**
 * (ClientCouponRecord)表控制层
 * @author lvyongqi
 * @since 2021-07-25 14:49:53
 */
@RestController
@RequestMapping("couponRecord")
@Api(tags = "优惠券记录控制层")
public class ClientCouponRecordController{

    /**
     * 服务对象
     */
    @Resource
    private ClientCouponRecordService clientCouponRecordService;

    /**
     * 获取所有的优惠券记录
     * @return 所有数据
     */
    @PostMapping("getAllCouponRecord")
    @ApiOperation("获取所有的优惠券记录")
    public R getAllCouponRecord(PageVo pageVo, CouponRecordQueryVo couponRecordQueryVo) {
        return clientCouponRecordService.getAllCouponRecord(pageVo, couponRecordQueryVo);
    }

    /**
     * 客户领取优惠券记录，往优惠券记录表中插入一条数据
     * @param couponId 优惠券Id
     * @param clientId 客户Id
     * @return 插入结果
     */
    @PutMapping("collectCoupon")
    @ApiOperation("领取优惠券")
    public R collectCoupon(Integer couponId,Integer clientId) {
        return clientCouponRecordService.collectCoupon(couponId,clientId);
    }

    /**
     * 客户使用优惠券记录，往优惠券记录表中得优惠券使用时间和使用状态
     * @param couponId 优惠券Id
     * @param clientId 客户Id
     * @return 插入结果
     */
    @PutMapping("useCoupon")
    @ApiOperation("使用优惠券")
    public R useCoupon(Integer couponId,Integer clientId) {
        return clientCouponRecordService.useCoupon(couponId,clientId);
    }
}
